package lv.clientedisqueria.model.tema;

import java.util.Collections;
import java.util.Comparator;
import java.util.List;

import lv.clientedisqueria.model.DisqueriaTablaModelo;
import lv.mensajeriadisqueria.idomain.ITema;

@SuppressWarnings("serial")
public class TemaTablaModel extends DisqueriaTablaModelo<ITema> {
	
	private static String[] columns = new String[]{"Nombre"};

	public TemaTablaModel(TemaModel modelo) {
		super(modelo, columns);
	}

	@Override
	protected void modificarEntity(ITema oldEntity, ITema newEntity) {
		oldEntity.setNombre(newEntity.getNombre());
		oldEntity.setLetra(newEntity.getLetra());
	}

	@Override
	protected void ordenar(List<ITema> lista) {
		Collections.sort(getDomains(), new Comparator<ITema>() {
			@Override
			public int compare(ITema tema1, ITema tema2) {
				return tema1.getNombre().compareToIgnoreCase(tema2.getNombre());
			}
		});
	}

	@Override
	protected Object valor(int rowIndex, int columnIndex) {
		return getDomains().get(rowIndex).getNombre();
	}

	@Override
	public void actualizarTabla() {
		if (getSeleccionado().getIdTema() == null) {
			remover();
		}
	}
}